Skip to content

Conversation

@RafaelKayumov
Copy link
Contributor

@RafaelKayumov RafaelKayumov commented Oct 29, 2025

WOOMOB-1486

Description

Applies eligibility/visibility cached values for POS and Booking tabs visibility upon presenting.

  • Adds static method for Bookings tab initial visibility in BookingsTabEligibilityChecker
  • Adds static method for POS tab visibility initial check in POSTabVisibilityChecker
  • Setup POS and Bookings tab (and viewcontrollers overall) basing on cached initial visibility mentioned above
  • Adds tests

Test Steps

  • Use 2 sites where 1st site is non CIAB and supports POS, and the 2nd site is CIAB site with bookable products / bookings.
  • Run the app with the non-CIAB site
  • In Menu - site selector switch to a CIAB site
  • In Menu - site selector switch back to non-CIAB site again
  • Repeat switching a few times
  • During switching make sure the required POS or Bookings tab is displayed instantly in tabbar without any delay.
  • Consider testing on iPhone. The non-CIAB site won't hate the POS tab.
  • Use demo videos as testing hint

Site Switching Demo

siteSwitching.mov

App Launching Demo

AppLaunching.mov

  • I have considered if this change warrants user-facing release notes and have added them to RELEASE-NOTES.txt if necessary.

@RafaelKayumov RafaelKayumov added this to the 23.6 milestone Oct 29, 2025
@RafaelKayumov RafaelKayumov added the type: task An internally driven task. label Oct 29, 2025
@dangermattic
Copy link
Collaborator

dangermattic commented Oct 29, 2025

1 Warning
⚠️ This PR is assigned to the milestone 23.6. This milestone is due in less than 2 days.
Please make sure to get it merged by then or assign it to a milestone with a later deadline.

Generated by 🚫 Danger

@wpmobilebot
Copy link
Collaborator

wpmobilebot commented Oct 29, 2025

App Icon📲 You can test the changes from this Pull Request in WooCommerce iOS Prototype by scanning the QR code below to install the corresponding build.

App NameWooCommerce iOS Prototype
Build Numberpr16292-35cece2
Version23.5
Bundle IDcom.automattic.alpha.woocommerce
Commit35cece2
Installation URL52t2b50o279vg
Automatticians: You can use our internal self-serve MC tool to give yourself access to those builds if needed.

@RafaelKayumov RafaelKayumov force-pushed the WOOMOB-1486-use-cached-tabs-visibility branch from 1bae8c7 to c1227b1 Compare October 29, 2025 15:51
@RafaelKayumov RafaelKayumov marked this pull request as ready for review October 29, 2025 15:52
@RafaelKayumov RafaelKayumov assigned adborbas and unassigned adborbas Oct 29, 2025
@itsmeichigo itsmeichigo self-assigned this Oct 30, 2025
Copy link
Contributor

@itsmeichigo itsmeichigo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This works as expected, good job!


// Configures POS tab coordinator once per logged in site session.
let posTabVisibilityChecker = posTabVisibilityCheckerFactory(site)
self.posTabVisibilityChecker = posTabVisibilityCheckerFactory(site)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nit: why don't we set the checker using the local variable?

Suggested change
self.posTabVisibilityChecker = posTabVisibilityCheckerFactory(site)
self.posTabVisibilityChecker = posTabVisibilityChecker

Copy link
Contributor Author

@RafaelKayumov RafaelKayumov Oct 30, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done in dec1f90

@RafaelKayumov RafaelKayumov merged commit 15b0c32 into trunk Oct 30, 2025
13 checks passed
@RafaelKayumov RafaelKayumov deleted the WOOMOB-1486-use-cached-tabs-visibility branch October 30, 2025 11:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

type: task An internally driven task.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants